<?php
/**
 * Created by PhpStorm.
 * User: admin
 * Date: 2018/1/11
 * Time: 22:18
 */

namespace app\lib\exception;


use think\Exception;

class BaseException extends Exception
{
    # HTTP 状态码 404，200
    public $code = 400;

    # 错误具体信息
    public $msg = '参数错误';

    # 自定义错误码
    public $errorCode = 10000;

    # 接收关联数组参数 并设置默认值
    public function __construct($params = [])
    {
        # 防御性代码 防止不是数组
        # return 并不强制需要传入数组，认为并不需要改写上边成员变量的默认值
        if(!is_array($params)){
            return ;
            # throw new Exception('参数必须是数组');
        }

        # 有值才取 不然会报错
        if(array_key_exists('code', $params)) {
            $this->code = $params['code'];
        }
        if(array_key_exists('msg', $params)) {
            $this->msg = $params['msg'];
        }
        if(array_key_exists('errorCode', $params)) {
            $this->errorCode = $params['errorCode'];
        }
    }
}